﻿namespace SmartDevice.Library.Device.Power
{
    /// <summary>
    /// 设备故障事件委托类型
    /// </summary>
    /// <param name="args"></param>
    public delegate void DeviceFaultEventHandler(DeviceFaultEventArgs args);

    /// <summary>
    /// 状态报告事件委托类型
    /// </summary>
    /// <param name="args"></param>
    public delegate void StatusReportEventHandler(PowerReportEventArgs args);


    public interface IPowerMaster
    {
        event DeviceFaultEventHandler DeviceFault;
        event StatusReportEventHandler StatusReport;

        bool Connect(NetworkConfig networkConfig);
        void DisConnect();
        void SetPowerOFF();
        void SetPowerON(double voltage, double current = 10);
    }
}